package com.spring.dive.a01class;

/**
 * 1）泛型类，如果没有指定类型，操作类型默认为Object
 * 2）泛型的类型参数只能是对象类型，不能是基础类型
 * 3）泛型在逻辑上可以看成多个不同的类型，但实际上都是相同类型
 */
public class GenericClass<T> {
    private T t;

    public T getT() {
        return t;
    }

    public void setT(T t) {
        this.t = t;
    }

    public static void main(String[] args) {
        GenericClass<String> clazz = new GenericClass<String>();
        clazz.setT("xiaoming");

        String t = clazz.getT();
        System.out.println("--------t:"+t);

        GenericClass<Integer> clazz1 = new GenericClass<Integer>();
        clazz1.setT(Integer.valueOf(111));

        System.out.println("--------class:"+clazz.getClass());
        System.out.println("--------class:"+clazz1.getClass());
        System.out.println("--------是否相同:"+(clazz1.getClass() == clazz.getClass()));
    }
}
